#include <iostream>
#include  <vector>
using namespace std;

int getMaxSumArr(vector<int>& vecArr){
	
	int nRet=-128,nCur=-128;
	for(int i=0;i<static_cast<int>(vecArr.size());++i){
		nCur=max(vecArr[i],vecArr[i]+nCur);
		nRet=max(nRet,nCur);
	}
	
	return nRet;
}
int main() {

	int n;
	cin>>n;
	vector<vector<int>> vecArr(n,vector<int>(n));
	for(int i=0;i<n;++i){
		for(int j=0;j<n;++j){
			cin>>vecArr[i][j];
		}
	}
	int nRet=-128;
	for(int top=0;top<n;++top){
		vector<int> col(n,0);
		for(int bottom=top;bottom<n;++bottom){
			for(int i=0;i<n;++i){
				col[i]+=vecArr[bottom][i];
			}
			nRet=max(nRet,getMaxSumArr(col));
		}
		
	}
	cout<<nRet<<endl;
	
	return 0;
}
